<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <title>广告分类管理</title>
    <meta content="width=device-width,initial-scale=1,maximum-scale=1,user-scalable=no" name="viewport">
    <link rel="stylesheet" href="../plugins/bootstrap/css/bootstrap.min.css">
    <link rel="stylesheet" href="../plugins/adminLTE/css/AdminLTE.css">
    <link rel="stylesheet" href="../plugins/adminLTE/css/skins/_all-skins.min.css">
    <link rel="stylesheet" href="../css/style.css">
	<link rel="stylesheet" href="../plugins/pageination/zpageNav.css">
	<script src="../plugins/jQuery/jquery-2.2.3.min.js"></script>
    <script src="../plugins/bootstrap/js/bootstrap.min.js"></script>
    
</head>

<body class="hold-transition skin-red sidebar-mini"  >
<div id="app">
	<div class="box-header with-border" style="height: 64.5px;line-height: 54px;">
		<h3 class="box-title">广告分类管理</h3>
	</div>
	<div class="box-body">
		<!-- 数据表格 -->
		<div class="table-box">
			<!--工具栏-->
			<div class="pull-left">
				<div class="form-group form-inline">
					<div class="btn-group">
						<button type="button" class="btn btn-default" title="新建" data-toggle="modal" data-target="#editModal" ><i class="fa fa-file-o"></i> 新建</button>
						<button type="button" class="btn btn-default" @click="deleteCategory()" title="删除" ><i class="fa fa-trash-o"></i> 删除</button>
						<button type="button" class="btn btn-default" title="开启" onclick='confirm("你确认要开启吗？")'><i class="fa fa-check"></i> 开启</button>
						<button type="button" class="btn btn-default" title="屏蔽" onclick='confirm("你确认要屏蔽吗？")'><i class="fa fa-ban"></i> 屏蔽</button>
						<button type="button" class="btn btn-default" title="刷新" onclick="window.location.reload();"><i class="fa fa-refresh"></i> 刷新</button>
					</div>
				</div>
			</div>
			<div class="box-tools pull-right">
				<div class="has-feedback">
					名称：<input >	<button class="btn btn-default" >查询</button>
				</div>
			</div>
			<!--数据列表-->
			<table id="dataList" class="table table-bordered table-striped table-hover dataTable">
				<thead>
				<tr>
					<th class="" style="padding-right:0px">
						<input id="selall" type="checkbox" class="icheckbox_square-blue">
					</th>
					<th class="sorting">类目ID</th>
					<th class="sorting">分类名称</th>
					<th class="text-center">操作</th>
				</tr>
				</thead>
				<tbody>
				<tr v-for="entity in categoryList">
					<td><input  type="checkbox" @click="updateSelection($event,entity.id)"></td>
					<td>{{entity.id}}</td>
					<td>{{entity.name}}</td>
					<td class="text-center">
						<button type="button" class="btn bg-olive btn-xs" data-toggle="modal" data-target="#editModal" @click="findOne(entity.id)" >修改</button>
					</td>
				</tr>
				</tbody>
			</table>
		</div>
		<!--分页-->
		<zpagenav v-bind:page="page" v-bind:page-size="pageSize" v-bind:total="total"
				  v-bind:max-page="maxPage"  v-on:pagehandler="pageHandler">
		</zpagenav>
	</div>
	<!-- 编辑窗口 -->
	<div class="modal fade" id="editModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
		<div class="modal-dialog" >
			<div class="modal-content">
				<div class="modal-header">
					<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
					<h3 id="myModalLabel">广告分类编辑</h3>
				</div>
				<div class="modal-body">
					<table class="table table-bordered table-striped"  width="800px">
						<tr>
							<td>分类名称</td>
							<td><input v-model="categoryEntity.name"  class="form-control" placeholder="分类名称">  </td>
						</tr>
					</table>
				</div>
				<div class="modal-footer">
					<button class="btn btn-success" data-dismiss="modal" aria-hidden="true" @click="saveCategory()">保存</button>
					<button class="btn btn-default" data-dismiss="modal" aria-hidden="true">关闭</button>
				</div>
			</div>
		</div>
	</div>
</div>

    
</body>
<script type="text/javascript" src="../plugins/vue/vuejs-2.5.16.js"></script>
<script type="text/javascript" src="../plugins/vue/axios-0.18.0.js"></script>
<script type="text/javascript" src="../plugins/pageination/zpageNav.js"></script>
<script type="text/javascript" src="../plugins/vue/qs.js"></script>
<script>
	new Vue({
		el:"#app",
		data:{
			page: 1,  //显示的是哪一页
			pageSize: 10, //每一页显示的数据条数
			total: 0, //记录总数
			maxPage:0,
			searchEntity:{},
			categoryList:[],
			selectIds:[], //记录选择了哪些记录的id
			categoryEntity:{}
		},
		methods:{
			pageHandler: function (page) {
				var _this = this;
				this.page = page;
				axios.post("/contentCategory/search.do?page="+page+"&rows="+this.pageSize,this.searchEntity)
						.then(function (response) {
							//取服务端响应的结果
							_this.categoryList = response.data.rows;
							_this.total = response.data.total;
						}).catch(function (reason) {
					console.log(reason);
				})
			},
			saveCategory:function () {
				var _this = this;

				var url = "";
				if (_this.categoryEntity.id != null){
					url = "/contentCategory/update.do";
				} else {
					url = "/contentCategory/add.do";
				}
				axios.post(url, _this.categoryEntity)
						.then(function (value) {
							console.log(value.data);
							//刷新页面
							_this.pageHandler(_this.page);
							_this.categoryEntity = {};
						});
			},
			findOne:function(id){
				var _this = this;
				axios.post("/contentCategory/findOne.do?id="+id)
						.then(function (response) {
							//刷新页面
							_this.categoryEntity  = response.data;
						}).catch(function (reason) {
					console.log(reason);
				});
			},
			updateSelection:function (event,id) {
				// 复选框选中
				if(event.target.checked){
					// 向数组中添加元素
					this.selectIds.push(id);
				}else{
					// 从数组中移除
					var idx = this.selectIds.indexOf(id);
					this.selectIds.splice(idx,1);
				}
			},

			deleteCategory:function () {
				var _this = this;
				//使用qs插件 处理数组
				axios.post('/contentCategory/delete.do',Qs.stringify({ids: _this.selectIds},{ indices: false }))
						.then(function (response) {
							_this.pageHandler(_this.page);
							_this.selectIds = [];
						}).catch(function (reason) {
					alert(reason.message);
				})
			}

		},
		created: function() {
			this.pageHandler(1);
		},
	});

</script>


</html>